package com.ticorp.salmofood.service.impl;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.ticorp.framework.service.BapiExecutionService;
import com.ticorp.salmofood.model.BeanAditivosSolicitadosResultados;
import com.ticorp.salmofood.model.BeanDetalleProduccionResultados;
import com.ticorp.salmofood.model.BeanDistribucionEntregasResultados;
import com.ticorp.salmofood.model.BeanPedidoProduccionResultados;
import com.ticorp.salmofood.service.TracingProductoTerminadoService;

public class TracingProductoTerminadoServiceImpl implements TracingProductoTerminadoService {

    // BAPI EXECUTION SERVICE
    private BapiExecutionService bapiExecutionService;

    public BapiExecutionService getBapiExecutionService() {
	return bapiExecutionService;
    }

    public void setBapiExecutionService(BapiExecutionService bapiExecutionService) {
	this.bapiExecutionService = bapiExecutionService;
    }

    public List getListaPedidoProduccion() {
	Map importMap = new HashMap();
	BeanPedidoProduccionResultados beanPedidoProduccionResultados = null;
	List listaPedidoProduccion = new ArrayList();

	// obtenerImportMapConsultaEntregas(consultaEntregas, importMap);

	// Map bapiResult =
	// bapiExecutionService.execute(Constantes.BAPI_LISTA_LOTES_FACTURADOS,
	// importMap,false);

	// BapiReturnBean brbTmp = new BapiReturnBean(bapiResult);

	// List datosLotesFacturados =
	// (List)bapiResult.get(Constantes.MAP_RETORNO_LISTA_LOTES_FACTURADOS);
	List datosListaPedidoProduccion = new ArrayList();
	/* if(CollectionUtils.isNotEmpty(datosLotesFacturados)){ */

	/* for(int i=0;i<datosLotesFacturados.size();i++){ */
	for (int i = 0; i < 1; i++) {
	    beanPedidoProduccionResultados = new BeanPedidoProduccionResultados();
	    // Map datoResultado = (Map)datosLotesFacturados.get(i);

	    /*
	     * beanLotesFacturadosResultado.setDato1(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO1)));
	     * beanLotesFacturadosResultado
	     * .setDato2(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO2)));
	     * beanLotesFacturadosResultado
	     * .setDato3(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO3)));
	     */

	    beanPedidoProduccionResultados.setNumeroPedido_PP("Dato nro. pedido");
	    beanPedidoProduccionResultados.setDieta_PP("Dato dieta");
	    beanPedidoProduccionResultados.setCalibre_PP("Dato calibre");
	    beanPedidoProduccionResultados.setDietaBase_PP("Dato dieta base");
	    beanPedidoProduccionResultados.setCliente_PP("Dato cliente");
	    beanPedidoProduccionResultados.setCantidadPedida_PP("Dato cantidad pedida");
	    beanPedidoProduccionResultados.setCantidadPedida_unidad_PP("Dato cant. pedida unidad");
	    beanPedidoProduccionResultados.setCantidadProducida_PP("Dato cant. producida");
	    beanPedidoProduccionResultados.setCantidadProducida_unidad_PP("Dato cant. prod. unidad");

	    listaPedidoProduccion.add(beanPedidoProduccionResultados);
	}
	/* } */
	// bapiResult = null;
	// datosEntregas = null;

	return listaPedidoProduccion;
    }

    public List getListaAditivosSolicitados() {
	Map importMap = new HashMap();
	BeanAditivosSolicitadosResultados beanAditivosSolicitadosResultados = null;
	List listaAditivosSolicitados = new ArrayList();

	// obtenerImportMapConsultaEntregas(consultaEntregas, importMap);

	// Map bapiResult =
	// bapiExecutionService.execute(Constantes.BAPI_LISTA_LOTES_FACTURADOS,
	// importMap,false);

	// BapiReturnBean brbTmp = new BapiReturnBean(bapiResult);

	// List datosLotesFacturados =
	// (List)bapiResult.get(Constantes.MAP_RETORNO_LISTA_LOTES_FACTURADOS);
	List datosListaAditivosSolicitados = new ArrayList();
	/* if(CollectionUtils.isNotEmpty(datosLotesFacturados)){ */

	/* for(int i=0;i<datosLotesFacturados.size();i++){ */
	for (int i = 0; i < 2; i++) {
	    beanAditivosSolicitadosResultados = new BeanAditivosSolicitadosResultados();
	    // Map datoResultado = (Map)datosLotesFacturados.get(i);

	    /*
	     * beanLotesFacturadosResultado.setDato1(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO1)));
	     * beanLotesFacturadosResultado
	     * .setDato2(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO2)));
	     * beanLotesFacturadosResultado
	     * .setDato3(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO3)));
	     */

	    beanAditivosSolicitadosResultados.setNombre_AS("Dato ASTAXANTINA 10% DSM (SF)");
	    beanAditivosSolicitadosResultados.setKgton_AS("Dato 0.70");
	    beanAditivosSolicitadosResultados.setPpm_AS("Dato 70");	   

	    listaAditivosSolicitados.add(beanAditivosSolicitadosResultados);
	}
	/* } */
	// bapiResult = null;
	// datosEntregas = null;

	return listaAditivosSolicitados;
    }

    // OBTENER LISTA DE DISTRIBUCION DE ENTREGAS
    public List getListaDistribucionEntregas() {
	Map importMap = new HashMap();
	BeanDistribucionEntregasResultados beanDistribucionEntregasResultados = null;
	List listaDistribucionEntregas = new ArrayList();

	// obtenerImportMapConsultaEntregas(consultaEntregas, importMap);

	// Map bapiResult =
	// bapiExecutionService.execute(Constantes.BAPI_LISTA_LOTES_FACTURADOS,
	// importMap,false);

	// BapiReturnBean brbTmp = new BapiReturnBean(bapiResult);

	// List datosLotesFacturados =
	// (List)bapiResult.get(Constantes.MAP_RETORNO_LISTA_LOTES_FACTURADOS);
	List datosListaDistribucionEntregas = new ArrayList();
	/* if(CollectionUtils.isNotEmpty(datosLotesFacturados)){ */

	/* for(int i=0;i<datosLotesFacturados.size();i++){ */
	for (int i = 0; i < 20; i++) {
	    beanDistribucionEntregasResultados = new BeanDistribucionEntregasResultados();
	    // Map datoResultado = (Map)datosLotesFacturados.get(i);

	    /*
	     * beanLotesFacturadosResultado.setDato1(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO1)));
	     * beanLotesFacturadosResultado
	     * .setDato2(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO2)));
	     * beanLotesFacturadosResultado
	     * .setDato3(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO3)));
	     */

	    beanDistribucionEntregasResultados.setCantidad_DE("datoo1" + i);
	    beanDistribucionEntregasResultados.setUnidad_DE("datoo2" + i);
	    beanDistribucionEntregasResultados.setFecha_DE("datoo3" + i);
	    beanDistribucionEntregasResultados.setRecepcionOC_DE("datoo4" + i);
	    beanDistribucionEntregasResultados.setNumeroOC_DE("datoo5" + i);	    

	    listaDistribucionEntregas.add(beanDistribucionEntregasResultados);
	}
	/* } */
	// bapiResult = null;
	// datosEntregas = null;

	return listaDistribucionEntregas;
    }

    public List getListaDetalleProduccion() {
	Map importMap = new HashMap();
	BeanDetalleProduccionResultados beanDetalleProduccionResultados = null;
	List listaDetalleProduccion = new ArrayList();

	// obtenerImportMapConsultaEntregas(consultaEntregas, importMap);

	// Map bapiResult =
	// bapiExecutionService.execute(Constantes.BAPI_LISTA_LOTES_FACTURADOS,
	// importMap,false);

	// BapiReturnBean brbTmp = new BapiReturnBean(bapiResult);

	// List datosLotesFacturados =
	// (List)bapiResult.get(Constantes.MAP_RETORNO_LISTA_LOTES_FACTURADOS);
	List datosListaDetalleProduccion = new ArrayList();
	/* if(CollectionUtils.isNotEmpty(datosLotesFacturados)){ */

	/* for(int i=0;i<datosLotesFacturados.size();i++){ */
	for (int i = 0; i < 20; i++) {
	    beanDetalleProduccionResultados = new BeanDetalleProduccionResultados();
	    // Map datoResultado = (Map)datosLotesFacturados.get(i);

	    /*
	     * beanLotesFacturadosResultado.setDato1(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO1)));
	     * beanLotesFacturadosResultado
	     * .setDato2(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO2)));
	     * beanLotesFacturadosResultado
	     * .setDato3(Util.convierteObjetoAstring(
	     * datoResultado.get(Constantes.DATO3)));
	     */

	    beanDetalleProduccionResultados.setLote_DP("dato lote" + i);
	    beanDetalleProduccionResultados.setCantidadSolicitada_DP("dato cant solic" + i);
	    beanDetalleProduccionResultados.setCantidadSolicitada_unidad_DP("dato cant solc uni" + i);
	    beanDetalleProduccionResultados.setCantidadProducida_DP("dato cant prod" + i);
	    beanDetalleProduccionResultados.setCantidadProducida_unidad_DP("dato cant prod uni" + i);
	    beanDetalleProduccionResultados.setBatchSolicitado_DP("dato batch sol" + i);
	    beanDetalleProduccionResultados.setBatchProducido_DP("dato batch prod" + i);
	    beanDetalleProduccionResultados.setLinea_DP("dato linea" + i);

	    listaDetalleProduccion.add(beanDetalleProduccionResultados);
	}
	/* } */
	// bapiResult = null;
	// datosEntregas = null;

	return listaDetalleProduccion;
    }
}
